The present disclosure relates to the field of caches in a processor, and, in particular, to saving power consumed by a cache.
A cache is a circuitry combined with switching logic that are arranged to keep a processor's access time to fetch data from memory, be it data or instruction data, as short as possible. This because, in recent years, processor velocity has grown considerably faster than the velocity for accessing memory. Thus, data that has already been fetched from main memory is intermediately stored in a buffer called cache, the cache is arranged very close to the processor, and is very fast though small piece of memory. To increase processor velocities without correspondingly increasing the velocity of the main memory, additional buffer (cache) levels are found in the cache.
Nowadays, several cache levels are spread over a computer system, a level 1 cache being arranged most closely on the processor die. Usually, a processor may comprise a level 1 data cache, a level 1 instruction cache, and a level 2 cache. A level 3 cache and main memory may be distributed over the computer system.
Due to higher performance requirements and high clock rates, the energy consumption of a cache has grown considerably.